package com.atguigu.spyx.model.vo.h5;

import com.atguigu.spyx.model.common.com.atguigu.spyx.model.entity.product.Product;
import com.atguigu.spyx.model.common.com.atguigu.spyx.model.entity.product.ProductSku;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.util.List;
import java.util.Map;

@Data
public class ProductSkuVo {
    @Schema(description = "商品详情对象")
    private ProductSku productSku;
    @Schema(description = "SPU对象")
    private Product product;
    @Schema(description = "轮播图")

    private List<String> sliderUrlList;
    @Schema(description = "商品详情图")
    private List<String> detailsImageUrlList;
    // 前端需要的List每一条记录的格式:  { "key": "颜色" , "valueList": [ "白色" , "黑色"]}
    @Schema(description = "商品规格信息")
    //页面中展示sku所在的spu的  所有的规格参数值 列表
    //list中的每个元素 代表一个规格参数 和值列表  从product表查询到 spec_value值转换
    private List<SpecValueVo> specValueList;
    @Schema(description = "商品规格对应商品skuId信息")
    //页面中选择不同的规格参数值 组合时，可以确定到一个唯一的skuid 查询sku的详情展示
    // skuSpecValueMap存储 每个sku规格值组合 映射自己的id 的Map
    // 白色 + 8G -> 12      白色 + 12G -> 13
    //页面中查询skuid=12的详情时， 白色+8G高亮展示   ， 如果点击了白色+12G 就可以获取到skuId=13 查询13的详情数据展示
    private Map<String,Long> skuSpecValueMap;
}